package com.lshl.lingshang.pub;

import android.content.Context;
import android.text.TextUtils;

import com.lshl.lingshang.ui.bean.UserBean;
import com.lshl.lingshang.utils.AppUtil;
import com.lshl.lingshang.utils.SharedPUtil;
import com.lshl.lingshang.utils.StringUtil;


/**
 * Description：封装存储数据
 * Created on 2017/9/28
 * Author : 郭
 */

public class GlobeConfig {
    /**
     * 是否是打包版本 默认debug
     */
    public static final boolean RELEASE = false;
    /**
     * 工程包名：SD卡保存路径时使用
     */
    public static final String PACKAGE_NAME = "com.pgy.langooo";
    private static UserBean userBean;
    private static int userid;
    /**
     * 登录手机号码
     */
    private static String mobile;
    /**
     * 是否已经启动过 1 是 0 否
     */
    private static int isStarted = 0;
    /**
     * 渠道编号
     */
    private static String channel = "langooo";
    /**
     * langooo设备唯一标识
     */
    private static String uuid;


    /**
     * // 初始化所有全局变量
     *
     * @param context
     */
    public static void init(Context context) {
        userBean = DataModule.getInstance().getLoginUserInfo();
        userid = DataModule.getInstance().getLoginedUserId();
        mobile = DataModule.getInstance().getMobile();
        uuid = DataModule.getInstance().getUUID(context);
    }


    /**
     * 保存用户信息
     *
     * @param userBean
     */
    public static void saveUsetInfo(UserBean userBean) {
        DataModule.getInstance().saveLoginedUserInfo(userBean);
    }


    /**
     * 拿到Userid
     *
     * @return
     */
    public static int getUserId() {
        DataModule instance = DataModule.getInstance();
        if (instance != null) {
            return instance.getLoginedUserId();
        } else {
            return 0;
        }

    }

    public static UserBean getUserInfo() {
        return DataModule.getInstance().getLoginUserInfo();
    }

    /**
     * 退出登录
     */
    public static void logout() {
        userBean = null;
        userid = 0;
        mobile = null;
        DataModule.getInstance().logout();
    }

    /**
     * 返回渠道编号
     */
//    public static String getChannel() {
//        return DataModule.getInstance().getChannelId();
//    }

    /**
     * 返回是否启动过标记
     */
    public static int getIsStarted(Context context) {
        if (isStarted == 0) isStarted = DataModule.getInstance().getIsStarted(context);
        return isStarted;
    }

    /**
     * 返回手机号码
     */
    public static String getMobile() {
        if (StringUtil.isBlank(mobile))
            mobile = StringUtil.StrTrim(DataModule.getInstance().getMobile());
        return mobile;
    }


    /**
     * 保存友盟token
     *
     * @param deviceToken
     */
    public static void saveUmengToken(String deviceToken) {
        if (!TextUtils.isEmpty(deviceToken)) {
            DataModule.getInstance().saveUmengToken(deviceToken);
        }
    }

    /**
     * 取出友盟token
     */
    public static String getUmengtoken() {
        return DataModule.getInstance().getUmengToken();
    }


    /**
     * 获取当前设备的唯一识别码 如无唯一识别码，则新生成一个
     *
     * @return
     */
    public static String getUUID(Context context) {
        String uuid = SharedPUtil.getString(PubConst.KEY_UUID, "");
        if (TextUtils.isEmpty(uuid)) {
            uuid = AppUtil.getUUID(context);
            SharedPUtil.setString(PubConst.KEY_UUID, uuid);
        }
        return uuid;
    }


}
